home *** CD-ROM | disk | FTP | other *** search
/ Joystick Magazine 1996 January / cd joystick 67 No9.iso / mac / Jeux & démos / Utilitaires / SoundView folder / SoundView Version History < prev   
Text File  |  1995-10-21  |  15KB  |  125 lines

  1. SoundView
  2. Steve Bird  
  3. SBird@SwRI.edu
  4. May 24, 1995
  5. Version 1.2.0   Updated Oct 21,1995 
  6.                                                                                                     
  7. What's all this, then?
  8.   This FREEWARE package allows the user to view the time-wave and frequency spectrum LIVE from any Macintosh® sound input device.  Real-time display is possible on faster Macintoshes;  display rates of >110 frames per second are possible on a Power Mac 8100/100; >35 fps on a Quadra 950.  A "Waterfall", or raster plot of previous spectral history, is presented in a separate window. Recording and playback of monophonic 8-bit sound is supported; a spectrogram can be made of the captured data; whether recorded by SoundView, or imported from a sound file. A readout provides the frequency value of a point specified by the mouse cursor. 
  9.                                                                                                     
  10.  See the file "SoundView ReadMe" for operating instructions. 
  11.                                                                                                     
  12. Version history:
  13. 1.2.0 - Oct 21,1995.
  14. • No longer compatible with MPW.   Poignant pause while sobbing dies down.    The source code now includes three CodeWarrior projects, made with CW7.
  15. • The entire program was re-written to take advantage of objects.
  16. • Memory management improved. Has been stress-tested at 900K allocation size. Whenever possible (which is not always), lack of memory is reported without quitting.
  17. • The main buffer for live sound data is either 512k or 128k, based on memory available at launch.
  18. • Depending on memory available at launch, some of the PREFERENCES options may be changed.  The waterfall window size and the spectrograph window size may be reduced, if necessary to run.
  19. • Improved behavior of scrollbar in CAPTURE window. Now there are always 256 positions, and you can scroll by a small amount, not just by a screenfull.
  20. • Removed ALL hard-coded strings, making the program localizable. If someone would care to translate into another language, the resources are all that have to be changed. (If someone does this, please let me know).
  21. • Default values for preferences are now resources in the app file itself (not in program code).
  22. • Improved performance by no longer drawing the data into the main timewave window if it is closed. (DUUHHH)
  23. • Hold down OPTION and look in the CAPTURE menu. The RECORD item changes to CALIBRATE FREQ.  Selecting this item produces a series of tones at 50, 100, 200, 500, 1000, 2000, 5000 and 10000 Hz, each for 1/4 second, in the CAPTURE window. The frequency is correct regardless of block size. The sample rate is the current rate selected in the OPTIONS menu. The amplitude is half scale.
  24. • Hold down OPTION and look in the CAPTURE menu. The RECORD item changes to CALIBRATE AMP.  Selecting this item produces a series of tones at 1000Hz at amplitudes of 1/16,  1/8,  3/16,  1/4,  3/8, 1/2, 3/4, and full scale, each for 1/4 second, in the CAPTURE window.
  25. • These tones were for checking of correctness of the displays and mouse readouts - use them if you can.  They revealed a bug in version 1.1.8 where the mouse readout was incorrect in the PEAK window.
  26.  
  27. 1.1.8 - Aug 28,1995.
  28. • Improved loading of AIFF files. Restored previous (< 1.1.6) behavior of not trashing the current captured data until we're sure we can load the new file OK.
  29. • Added zoom box to Spectrograph window to alternate between short (128) and long (370) histories. This state is remembered in the preferences file.
  30. • Improved memory management by disposing of offscreen buffer supporting the Spectrograph window when window is closed, and re-allocating it when re-opened. 
  31.  
  32. 1.1.7 - Aug 26,1995.
  33. • Improved scale on capture window. Now on long sounds (> 30 seconds), a tick mark will be labelled only every 5 seconds.
  34. • PROGRAMMERS NOTE: There are three TMPL resources now in the application. Use ResEdit to copy them into the "SoundView Prefs" file, and you can have a look at the preferences in ResEdit. I didn't have the program do this, because most people won't care.
  35.  
  36. 1.1.6 - Aug 25,1995.
  37. • Fixed bug where loading an AIFF file > 512k bytes would fail. (Thanks, John!)
  38. • Fixed bug in error dialog - entire message couldn't be seen.
  39.  
  40. 1.1.5 - Aug 24,1995.
  41. • Fixed preferences to be more robust, in case prefs file is trashed/renamed while SoundView is running.
  42. • Holding down the SHIFT key while SoundView starts up will now disregard the preferences file, show all windows, and set all options to defaults.
  43. • Fixed bug in spectrograph readout, where numbers were wrong when block size was 256.
  44. • Fixed bug where spectrograph readout didn't change when switching into/out of log mode.
  45.  
  46. 1.1.4 - Aug 21,1995.
  47. • Windows re-arranged to bring "live" windows in front, static windows behind, by default.
  48. • SoundView now has a preferences file.  All settings in the OPTIONS menu, all settings in the CAPTURE menu, and the RAINBOW/GRAYSCALE setting as saved into a file when SoundView quits.  Also, the position, visibility (open / closed), and front-to-back ordering of windows is saved.  These settings are restored the next time it is launched. EXCEPTION: the choice of input device is a system-wide function and is not saved. Any other program which changes that choice will change it for SoundView, as well. The file is called "SoundView Prefs" and is located in the PREFERENCES folder in the system folder. You can throw it away before launching if you want to restore defaults.
  49. • Minimum memory allocation has increased again. 
  50.  
  51. 1.1.3 - Aug 16,1995.
  52. • Fixed bug in Rainbow option for Spectrogram.  Colors are now more evenly distributed from blue -> green -> red -> white.
  53.  
  54. 1.1.2 - Aug 15,1995.
  55. • Added a new window: Spectrograph. (not Spectrogram).  The Spectrograph window shows LIVE data: frequency(X-axis) vs time (Y-axis) vs. amplitude (intensity).
  56.  
  57. 1.1.1 - Aug 14,1995.
  58. • Fixed bug where cancelling a recording operation would clear out the old captured data, but leave the capture window mouse readout enabled.
  59. • Added a new window: Peak & Average.  When you make a spectrogram, there are 512 frequency transforms performed. So there are 512 values for frequency #1, 512 values for frequency #2,etc.  The highest values at each discrete frequency are collected to form the green peak graph in the new window.  The average of all values at each frequency are collected to form the white graph in the new window.  The peak is always higher than the average, unless the signal is a single continuous tone, in which case the peak and average are equal.  The window behaves like all other windows.
  60.  
  61. 1.1.0 - Aug 7,1995.
  62. • Added ability to read AIFF files. The OPEN command in the FILE menu now will list them as readable.
  63. • Added ability to read AIFF-C files if they don't have compression.
  64. • Removed the DC Removal option; it's now on all the time.  Since not many input devices pass DC, it was of limited use.
  65. • Improved memory management by disposing of offscreen buffer supporting Waterfall window when window is closed, and re-allocating it when re-opened. This brings up the possibility of failure when re-opening the window (because memory was used for something else). If that occurs, the # lines, ΔX, and ΔY are reduced, and the allocation is re-tried before giving up. If this is a problem, allocate more memory to SoundView in the "Get Info" box from the Finder.
  66. • Improved memory management by using almost all of remaining RAM allocation for recording.  Available recording time (or loadable file size) is no longer fixed, but depends on how much RAM you give to SoundView in the "Get Info" box from the Finder. 
  67. • New "Stop Playback" item in CAPTURE menu or command-period now stops playback of captured audio.
  68. • When a sound file is read or saved, the title of the captured audio window is now changed to the name of the file.
  69. • When a spectrogram is made, the title of the spectrogram window is now changed to "Spectrogram of: " and the name of the file (if any).
  70. • The SPEED menu now has valid µSec values on 68K Macs. (Previous versions only had valid values on Power Macs).
  71. • The SPEED menu now has a "Max possible" item, referring to frames per second. This is obtained by dividing the sample rate by the block size.
  72. • Figured out control color tables, so now the captured window has the same look as the rest. (Previously, I couldn't use a black background because the radio buttons disappeared). The bad news is that the minimum & preferred allocations have increased.
  73. • Added x256 and x512 selections to CAPTURED window, because of increased space.
  74. • Added mouse readout of time in CAPTURED window.
  75. • Added visible scale to CAPTURED window. The window labels seconds, and draws tick marks every 0.05 seconds.
  76. • Fixed bug where reading a file would not re-figure the scale factors correctly in the CAPTURED window. Things would not be right until you set a new zoom factor.  Now, setting a zoom factor, then reading a file, works OK.
  77. • Fixed bug where failure when allocating an offscreen video buffer could lead to a crash, not to an error message. (I just gotta get a ppc Pascal compiler - why C lets you get away with this *&!@%^$#!! stuff, I don't know!).
  78. • Fixed bug where I wrongly figured the number of bytes in the main GWorld.  This had no visible effect, because the missed bytes happened to be unchanged during operation.  (Discovered when I changed to BlockMove instead of CopyBits in the 'InitMainWindow' routine.)
  79. • Fixed bug where switch between cross and arrow cursors wouldn't always happen.
  80. • The cursor is now changed to a watch when making a spectrogram.
  81. • Added logarithmic frequency scale option to the OPTIONS menu. A number of people have requested this, so here it is. It's not real high-performance, but I believe it is mathematically correct. It eats memory like crazy. To use log mode at the higher block sizes, YOU MAY HAVE TO INCREASE SOUNDVIEW'S MEMORY ALLOCATION. From the Finder, choose "Get Info" from the FILE menu, and enter 4000 into the preferred size box.  The mouse readouts are correct in log mode, although one bug remains: If you make a spectrogram in one mode (log or linear), then switch to the other mode, the spectrogram mouse readout is incorrect.  Log mode spectrograms are not recommended on 68K machines. (Perhaps I should change the watch cursor to a calendar.  ;-)
  82.  
  83. 1.0.9 - Jun 14,1995.
  84. • Fixed bug where waterfall lines (with lines mode ON) were 2 pixels tall even with zero amplitude. (introduced with 1.0.8 "cleanup" )
  85. • Properly centered display of X mouse readout in spectrogram window. Previously, times >= 10.00 seconds left residue on screen.  (mouse droppings?  :•>)
  86. • Fixed bug where saving a sound into an existing file would not replace the 'snd ' resources there, but would add another resource.  Now it deletes any and all 'snd ' resources before saving the new one.
  87. • In lines mode, went back to old (1.0.2) method of drawing lines in waterfall window only, i.e., from amplitude 0 to amplitude 1 to amplitude 2,  because it looks better... Spectrum drawing in main window is still vertical lines from 0 to amplitude 0, from 0 to amplitude 1... (in lines mode).  
  88. • Added ability to read WAV files ( from WINDOZE ).  File name must end in '.WAV'  (caps required).
  89. • Added more speech about menu items chosen. (Sync, Lines Mode, etc. )
  90. • Fixed bug where making spectrogram of short sound with large block size produced garbage at the end of the spectrogram.
  91. • Restored proper operation of calibration keys (Press OPTION, SHIFT, and/or CONTROL).  This creates a pure sine wave at 1 of 8 frequencies at one-half full scale amplitude, instead of the input signal. (Turn on LINES MODE to better see it). They were always there, but poor event handling didn't recognize them unless some other event occurred.
  92. • Added MARKs for all routines in all files (I think). Marks had not kept up with me.
  93. • Fixed bug where asking for a RECORD operation on some machines, in some circumstances (Thanks, Clare!!!) would cause program to quit with an unreasonable error explanation.
  94.  
  95. 1.0.8 - Jun 6,1995.
  96. • Fixed bug when switching to / from background.
  97. • Fixed bug in debugging code (!!!), which had not kept up with changes elsewhere, because it was disabled. Did not affect released app, but could not compile source with my debugging code enabled.
  98. • Fixed bug in menu display of non-integer sample rates. They were rounded to integer values, for no good reason.
  99. • Fixed bug in balloon help regarding rainbow/grayscale choices.
  100. • Fixed bug where if some other program had set the input sample rate to less than the highest value available, SoundView was incorrectly assuming the highest setting. Now I actually set it upon startup.
  101. • Fixed bug where if you captured a large sound, or were otherwise short on memory, then expanded the waterfall ΔX, ΔY, or #lines, the window would expand, but the offscreen buffer supporting it might not. Results were colorful, and amusing, but not useful. Now you get a 'no can do' message.
  102. • Fixed bug: SPECTRUM BOOST did not work on 68K version. Now it does.
  103. • Moved waterfall window to the left side of the screen, and the time / spectrum window to the right. This is because the waterfall window expands downward and rightward, and was expanding offscreen.
  104. • Finished commenting and cleaning up all code. Removed a few obsolete routines, unnecessary #INCLUDE directives, etc.
  105.  
  106. 1.0.7b- Jun 2,1995.  Not sent to archives, but available on server.
  107. • Removed gratituitous references to my employer, replaced with more appropriate logo.
  108. • Corrected spelling of "Spectragram" to Spectrogram" throughout source code (Thanks, Paul!).  This includes the files named "Spectragram.c" and "Spectragram.h". (Hey, at least I was consistent!  :-)
  109.  
  110. 1.0.7a- Jun 1,1995.  Not sent to archives, but available on server.
  111. •  Source code was cleaned up and comments added.  No bug fixes or functional changes. 
  112. •  Added the 'Other Things..' section above. 
  113. •  Changed 'System Requirements' section above to reflect the fact that some code requires a 68020 processor, at least. (Previous version said 'Any Macintosh').
  114.  
  115. 1.0.7 - May 30,1995.
  116. •  Changed to compile with 'weak' link to PowerMac speech library, so that if Speech Manager is not present, MacOS will not complain.  68K version not affected.  Thanks to all who reported this.
  117.  
  118. 1.0.6 - May 26,1995.
  119. • First public release.  
  120.                                                                                                    
  121. Please send E-mail to the above address with comments or questions.
  122. Let me know what use you can make of SoundView.
  123.  
  124. Macintosh is a trademark of Apple Computer, Inc.
  125.